1. Field of the Invention
The present invention relates to data storage. More particularly, the invention concerns the capture and duplication of information through the use of data mirroring.
2. Description of the Prior Art
By way of background, data mirroring is a procedure whereby data is duplicated into one or more copies that are stored on one or more redundant storage systems for safekeeping. If one storage system fails or the data thereon becomes corrupted or unrecoverable, a mirrored copy can be used in its place. Mirroring solutions come in two general varieties: Continuous and discrete. In continuous mirroring systems, data on a source storage system is copied to a target data storage system each time the data is changed on the source system. The changes are thus immediately mirrored to the target system. In discrete mirroring systems, changes to data are accumulated until an event occurs (e.g., administrator initiation), at which time all of the changes are sent to the target system.
In large storage systems, subsets of data might have different mirroring requirements. For example, files associated with mission-critical data might require mirroring to a primary mirror target each time a file update occurs, somewhat important files might require mirroring to a secondary mirror target upon administrator request, and scratch files might be mirrored to a tertiary mirror target once per day, or might not be mirrored at all. Current mirroring solutions provide no mechanism for tailoring both mirroring levels (i.e., none, discrete or continuous) and data granularity (i.e., file, directory, volume, etc.). Current systems also provide no ability to granularly specify a storage destination as an additional mirroring parameter.
What is therefore needed is a data mirroring method that allows administrators to specify any combination of mirroring type, data granularity, and mirroring destination.